﻿///////////////////////////////////////////////////////////////
// This is generated code. 
//////////////////////////////////////////////////////////////
// Code is generated using LLBLGen Pro version: 4.2
// Code is generated on: 
// Code is generated using templates: SD.TemplateBindings.SharedTemplates
// Templates vendor: Solutions Design.
// Templates version: 
//////////////////////////////////////////////////////////////
using System;
using System.Collections;
using System.Collections.Generic;
using VNet.VisiSuite.Dal;
using VNet.VisiSuite.Dal.FactoryClasses;
using VNet.VisiSuite.Dal.HelperClasses;
using SD.LLBLGen.Pro.ORMSupportClasses;

namespace VNet.VisiSuite.Dal.RelationClasses
{
	/// <summary>Implements the relations factory for the entity: UserLogin. </summary>
	public partial class UserLoginRelations
	{
		/// <summary>CTor</summary>
		public UserLoginRelations()
		{
		}

		/// <summary>Gets all relations of the UserLoginEntity as a list of IEntityRelation objects.</summary>
		/// <returns>a list of IEntityRelation objects</returns>
		public virtual List<IEntityRelation> GetAllRelations()
		{
			List<IEntityRelation> toReturn = new List<IEntityRelation>();
			toReturn.Add(this.AlarmSettingEntityUsingCreatedBy);
			toReturn.Add(this.AlarmSettingEntityUsingLastUpdatedBy);
			toReturn.Add(this.AreaEntityUsingCreatedBy);
			toReturn.Add(this.AreaEntityUsingLastUpdatedBy);
			toReturn.Add(this.AreaShiftEntityUsingCreatedBy);
			toReturn.Add(this.AreaShiftEntityUsingLastUpdatedBy);
			toReturn.Add(this.CellEntityUsingCreatedBy);
			toReturn.Add(this.CellEntityUsingLastUpdatedBy);
			toReturn.Add(this.CellAlarmSettingEntityUsingCreatedBy);
			toReturn.Add(this.CellAlarmSettingEntityUsingLastUpdatedBy);
			toReturn.Add(this.DowntimeButtonEntityUsingCreatedBy);
			toReturn.Add(this.DowntimeButtonEntityUsingLastUpdatedBy);
			toReturn.Add(this.LaunchApplicationEntityUsingCreatedBy);
			toReturn.Add(this.LaunchApplicationEntityUsingLastUpdatedBy);
			toReturn.Add(this.PlantEntityUsingCreatedBy);
			toReturn.Add(this.PlantEntityUsingLastUpdatedBy);
			toReturn.Add(this.ProductEntityUsingCreatedBy);
			toReturn.Add(this.ProductEntityUsingLastUpdatedBy);
			toReturn.Add(this.ProductionPlanEntityUsingCreatedBy);
			toReturn.Add(this.ProductionPlanEntityUsingLastUpdatedBy);
			toReturn.Add(this.ProductionPlanScheduledDowntimeEntityUsingCreatedBy);
			toReturn.Add(this.ProductionPlanScheduledDowntimeEntityUsingLastUpdatedBy);
			toReturn.Add(this.ReasonCodeEntityUsingCreatedBy);
			toReturn.Add(this.ReasonCodeEntityUsingLastUpdatedBy);
			toReturn.Add(this.RollupDefinitionEntityUsingCreatedBy);
			toReturn.Add(this.RollupDefinitionEntityUsingLastUpdatedBy);
			toReturn.Add(this.ScheduleEntityUsingCreatedBy);
			toReturn.Add(this.ScheduleEntityUsingLastUpdatedBy);
			toReturn.Add(this.UserLoginEntityUsingCreatedBy);
			toReturn.Add(this.UserLoginEntityUsingLastUpdatedBy);
			toReturn.Add(this.UserLoginHistoryEntityUsingUserLoginId);
			toReturn.Add(this.UserLoginEntityUsingUserLoginIdCreatedBy);
			toReturn.Add(this.UserLoginEntityUsingUserLoginIdLastUpdatedBy);
			return toReturn;
		}

		#region Class Property Declarations

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and AlarmSettingEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - AlarmSetting.CreatedBy
		/// </summary>
		public virtual IEntityRelation AlarmSettingEntityUsingCreatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "AlarmSettings" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, AlarmSettingFields.CreatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("AlarmSettingEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and AlarmSettingEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - AlarmSetting.LastUpdatedBy
		/// </summary>
		public virtual IEntityRelation AlarmSettingEntityUsingLastUpdatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "AlarmSettings1" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, AlarmSettingFields.LastUpdatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("AlarmSettingEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and AreaEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - Area.CreatedBy
		/// </summary>
		public virtual IEntityRelation AreaEntityUsingCreatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "Areas" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, AreaFields.CreatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("AreaEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and AreaEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - Area.LastUpdatedBy
		/// </summary>
		public virtual IEntityRelation AreaEntityUsingLastUpdatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "Areas1" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, AreaFields.LastUpdatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("AreaEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and AreaShiftEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - AreaShift.CreatedBy
		/// </summary>
		public virtual IEntityRelation AreaShiftEntityUsingCreatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "AreaShifts" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, AreaShiftFields.CreatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("AreaShiftEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and AreaShiftEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - AreaShift.LastUpdatedBy
		/// </summary>
		public virtual IEntityRelation AreaShiftEntityUsingLastUpdatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "AreaShifts1" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, AreaShiftFields.LastUpdatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("AreaShiftEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and CellEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - Cell.CreatedBy
		/// </summary>
		public virtual IEntityRelation CellEntityUsingCreatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "Cells" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, CellFields.CreatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("CellEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and CellEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - Cell.LastUpdatedBy
		/// </summary>
		public virtual IEntityRelation CellEntityUsingLastUpdatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "Cells1" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, CellFields.LastUpdatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("CellEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and CellAlarmSettingEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - CellAlarmSetting.CreatedBy
		/// </summary>
		public virtual IEntityRelation CellAlarmSettingEntityUsingCreatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "CellAlarmSettings" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, CellAlarmSettingFields.CreatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("CellAlarmSettingEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and CellAlarmSettingEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - CellAlarmSetting.LastUpdatedBy
		/// </summary>
		public virtual IEntityRelation CellAlarmSettingEntityUsingLastUpdatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "CellAlarmSettings1" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, CellAlarmSettingFields.LastUpdatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("CellAlarmSettingEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and DowntimeButtonEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - DowntimeButton.CreatedBy
		/// </summary>
		public virtual IEntityRelation DowntimeButtonEntityUsingCreatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "DowntimeButtons" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, DowntimeButtonFields.CreatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("DowntimeButtonEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and DowntimeButtonEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - DowntimeButton.LastUpdatedBy
		/// </summary>
		public virtual IEntityRelation DowntimeButtonEntityUsingLastUpdatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "DowntimeButtons_" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, DowntimeButtonFields.LastUpdatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("DowntimeButtonEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and LaunchApplicationEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - LaunchApplication.CreatedBy
		/// </summary>
		public virtual IEntityRelation LaunchApplicationEntityUsingCreatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "LaunchApplications" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, LaunchApplicationFields.CreatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("LaunchApplicationEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and LaunchApplicationEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - LaunchApplication.LastUpdatedBy
		/// </summary>
		public virtual IEntityRelation LaunchApplicationEntityUsingLastUpdatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "LaunchApplications1" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, LaunchApplicationFields.LastUpdatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("LaunchApplicationEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and PlantEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - Plant.CreatedBy
		/// </summary>
		public virtual IEntityRelation PlantEntityUsingCreatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "Plants" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, PlantFields.CreatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("PlantEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and PlantEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - Plant.LastUpdatedBy
		/// </summary>
		public virtual IEntityRelation PlantEntityUsingLastUpdatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "Plants1" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, PlantFields.LastUpdatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("PlantEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and ProductEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - Product.CreatedBy
		/// </summary>
		public virtual IEntityRelation ProductEntityUsingCreatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "Products" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, ProductFields.CreatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("ProductEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and ProductEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - Product.LastUpdatedBy
		/// </summary>
		public virtual IEntityRelation ProductEntityUsingLastUpdatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "Products1" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, ProductFields.LastUpdatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("ProductEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and ProductionPlanEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - ProductionPlan.CreatedBy
		/// </summary>
		public virtual IEntityRelation ProductionPlanEntityUsingCreatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "ProductionPlans" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, ProductionPlanFields.CreatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("ProductionPlanEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and ProductionPlanEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - ProductionPlan.LastUpdatedBy
		/// </summary>
		public virtual IEntityRelation ProductionPlanEntityUsingLastUpdatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "ProductionPlans1" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, ProductionPlanFields.LastUpdatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("ProductionPlanEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and ProductionPlanScheduledDowntimeEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - ProductionPlanScheduledDowntime.CreatedBy
		/// </summary>
		public virtual IEntityRelation ProductionPlanScheduledDowntimeEntityUsingCreatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "ProductionPlanScheduledDowntimes" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, ProductionPlanScheduledDowntimeFields.CreatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("ProductionPlanScheduledDowntimeEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and ProductionPlanScheduledDowntimeEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - ProductionPlanScheduledDowntime.LastUpdatedBy
		/// </summary>
		public virtual IEntityRelation ProductionPlanScheduledDowntimeEntityUsingLastUpdatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "ProductionPlanScheduledDowntimes1" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, ProductionPlanScheduledDowntimeFields.LastUpdatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("ProductionPlanScheduledDowntimeEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and ReasonCodeEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - ReasonCode.CreatedBy
		/// </summary>
		public virtual IEntityRelation ReasonCodeEntityUsingCreatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "ReasonCodes" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, ReasonCodeFields.CreatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("ReasonCodeEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and ReasonCodeEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - ReasonCode.LastUpdatedBy
		/// </summary>
		public virtual IEntityRelation ReasonCodeEntityUsingLastUpdatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "ReasonCodes1" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, ReasonCodeFields.LastUpdatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("ReasonCodeEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and RollupDefinitionEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - RollupDefinition.CreatedBy
		/// </summary>
		public virtual IEntityRelation RollupDefinitionEntityUsingCreatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "RollupDefinitions" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, RollupDefinitionFields.CreatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("RollupDefinitionEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and RollupDefinitionEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - RollupDefinition.LastUpdatedBy
		/// </summary>
		public virtual IEntityRelation RollupDefinitionEntityUsingLastUpdatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "RollupDefinitions1" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, RollupDefinitionFields.LastUpdatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("RollupDefinitionEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and ScheduleEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - Schedule.CreatedBy
		/// </summary>
		public virtual IEntityRelation ScheduleEntityUsingCreatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "Schedules" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, ScheduleFields.CreatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("ScheduleEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and ScheduleEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - Schedule.LastUpdatedBy
		/// </summary>
		public virtual IEntityRelation ScheduleEntityUsingLastUpdatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "Schedules1" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, ScheduleFields.LastUpdatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("ScheduleEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and UserLoginEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - UserLogin.CreatedBy
		/// </summary>
		public virtual IEntityRelation UserLoginEntityUsingCreatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "UserLogins" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, UserLoginFields.CreatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and UserLoginEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - UserLogin.LastUpdatedBy
		/// </summary>
		public virtual IEntityRelation UserLoginEntityUsingLastUpdatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "UserLogins1" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, UserLoginFields.LastUpdatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", false);
				return relation;
			}
		}

		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and UserLoginHistoryEntity over the 1:n relation they have, using the relation between the fields:
		/// UserLogin.UserLoginId - UserLoginHistory.UserLoginId
		/// </summary>
		public virtual IEntityRelation UserLoginHistoryEntityUsingUserLoginId
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.OneToMany, "UserLoginHistories" , true);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, UserLoginHistoryFields.UserLoginId);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginHistoryEntity", false);
				return relation;
			}
		}


		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and UserLoginEntity over the m:1 relation they have, using the relation between the fields:
		/// UserLogin.CreatedBy - UserLogin.UserLoginId
		/// </summary>
		public virtual IEntityRelation UserLoginEntityUsingUserLoginIdCreatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.ManyToOne, "UserLogin", false);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, UserLoginFields.CreatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", false);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				return relation;
			}
		}
		/// <summary>Returns a new IEntityRelation object, between UserLoginEntity and UserLoginEntity over the m:1 relation they have, using the relation between the fields:
		/// UserLogin.LastUpdatedBy - UserLogin.UserLoginId
		/// </summary>
		public virtual IEntityRelation UserLoginEntityUsingUserLoginIdLastUpdatedBy
		{
			get
			{
				IEntityRelation relation = new EntityRelation(SD.LLBLGen.Pro.ORMSupportClasses.RelationType.ManyToOne, "UserLogin1", false);
				relation.AddEntityFieldPair(UserLoginFields.UserLoginId, UserLoginFields.LastUpdatedBy);
				relation.InheritanceInfoPkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", false);
				relation.InheritanceInfoFkSideEntity = InheritanceInfoProviderSingleton.GetInstance().GetInheritanceInfo("UserLoginEntity", true);
				return relation;
			}
		}
		/// <summary>stub, not used in this entity, only for TargetPerEntity entities.</summary>
		public virtual IEntityRelation GetSubTypeRelation(string subTypeEntityName) { return null; }
		/// <summary>stub, not used in this entity, only for TargetPerEntity entities.</summary>
		public virtual IEntityRelation GetSuperTypeRelation() { return null;}
		#endregion

		#region Included Code

		#endregion
	}
	
	/// <summary>Static class which is used for providing relationship instances which are re-used internally for syncing</summary>
	internal static class StaticUserLoginRelations
	{
		internal static readonly IEntityRelation AlarmSettingEntityUsingCreatedByStatic = new UserLoginRelations().AlarmSettingEntityUsingCreatedBy;
		internal static readonly IEntityRelation AlarmSettingEntityUsingLastUpdatedByStatic = new UserLoginRelations().AlarmSettingEntityUsingLastUpdatedBy;
		internal static readonly IEntityRelation AreaEntityUsingCreatedByStatic = new UserLoginRelations().AreaEntityUsingCreatedBy;
		internal static readonly IEntityRelation AreaEntityUsingLastUpdatedByStatic = new UserLoginRelations().AreaEntityUsingLastUpdatedBy;
		internal static readonly IEntityRelation AreaShiftEntityUsingCreatedByStatic = new UserLoginRelations().AreaShiftEntityUsingCreatedBy;
		internal static readonly IEntityRelation AreaShiftEntityUsingLastUpdatedByStatic = new UserLoginRelations().AreaShiftEntityUsingLastUpdatedBy;
		internal static readonly IEntityRelation CellEntityUsingCreatedByStatic = new UserLoginRelations().CellEntityUsingCreatedBy;
		internal static readonly IEntityRelation CellEntityUsingLastUpdatedByStatic = new UserLoginRelations().CellEntityUsingLastUpdatedBy;
		internal static readonly IEntityRelation CellAlarmSettingEntityUsingCreatedByStatic = new UserLoginRelations().CellAlarmSettingEntityUsingCreatedBy;
		internal static readonly IEntityRelation CellAlarmSettingEntityUsingLastUpdatedByStatic = new UserLoginRelations().CellAlarmSettingEntityUsingLastUpdatedBy;
		internal static readonly IEntityRelation DowntimeButtonEntityUsingCreatedByStatic = new UserLoginRelations().DowntimeButtonEntityUsingCreatedBy;
		internal static readonly IEntityRelation DowntimeButtonEntityUsingLastUpdatedByStatic = new UserLoginRelations().DowntimeButtonEntityUsingLastUpdatedBy;
		internal static readonly IEntityRelation LaunchApplicationEntityUsingCreatedByStatic = new UserLoginRelations().LaunchApplicationEntityUsingCreatedBy;
		internal static readonly IEntityRelation LaunchApplicationEntityUsingLastUpdatedByStatic = new UserLoginRelations().LaunchApplicationEntityUsingLastUpdatedBy;
		internal static readonly IEntityRelation PlantEntityUsingCreatedByStatic = new UserLoginRelations().PlantEntityUsingCreatedBy;
		internal static readonly IEntityRelation PlantEntityUsingLastUpdatedByStatic = new UserLoginRelations().PlantEntityUsingLastUpdatedBy;
		internal static readonly IEntityRelation ProductEntityUsingCreatedByStatic = new UserLoginRelations().ProductEntityUsingCreatedBy;
		internal static readonly IEntityRelation ProductEntityUsingLastUpdatedByStatic = new UserLoginRelations().ProductEntityUsingLastUpdatedBy;
		internal static readonly IEntityRelation ProductionPlanEntityUsingCreatedByStatic = new UserLoginRelations().ProductionPlanEntityUsingCreatedBy;
		internal static readonly IEntityRelation ProductionPlanEntityUsingLastUpdatedByStatic = new UserLoginRelations().ProductionPlanEntityUsingLastUpdatedBy;
		internal static readonly IEntityRelation ProductionPlanScheduledDowntimeEntityUsingCreatedByStatic = new UserLoginRelations().ProductionPlanScheduledDowntimeEntityUsingCreatedBy;
		internal static readonly IEntityRelation ProductionPlanScheduledDowntimeEntityUsingLastUpdatedByStatic = new UserLoginRelations().ProductionPlanScheduledDowntimeEntityUsingLastUpdatedBy;
		internal static readonly IEntityRelation ReasonCodeEntityUsingCreatedByStatic = new UserLoginRelations().ReasonCodeEntityUsingCreatedBy;
		internal static readonly IEntityRelation ReasonCodeEntityUsingLastUpdatedByStatic = new UserLoginRelations().ReasonCodeEntityUsingLastUpdatedBy;
		internal static readonly IEntityRelation RollupDefinitionEntityUsingCreatedByStatic = new UserLoginRelations().RollupDefinitionEntityUsingCreatedBy;
		internal static readonly IEntityRelation RollupDefinitionEntityUsingLastUpdatedByStatic = new UserLoginRelations().RollupDefinitionEntityUsingLastUpdatedBy;
		internal static readonly IEntityRelation ScheduleEntityUsingCreatedByStatic = new UserLoginRelations().ScheduleEntityUsingCreatedBy;
		internal static readonly IEntityRelation ScheduleEntityUsingLastUpdatedByStatic = new UserLoginRelations().ScheduleEntityUsingLastUpdatedBy;
		internal static readonly IEntityRelation UserLoginEntityUsingCreatedByStatic = new UserLoginRelations().UserLoginEntityUsingCreatedBy;
		internal static readonly IEntityRelation UserLoginEntityUsingLastUpdatedByStatic = new UserLoginRelations().UserLoginEntityUsingLastUpdatedBy;
		internal static readonly IEntityRelation UserLoginHistoryEntityUsingUserLoginIdStatic = new UserLoginRelations().UserLoginHistoryEntityUsingUserLoginId;
		internal static readonly IEntityRelation UserLoginEntityUsingUserLoginIdCreatedByStatic = new UserLoginRelations().UserLoginEntityUsingUserLoginIdCreatedBy;
		internal static readonly IEntityRelation UserLoginEntityUsingUserLoginIdLastUpdatedByStatic = new UserLoginRelations().UserLoginEntityUsingUserLoginIdLastUpdatedBy;

		/// <summary>CTor</summary>
		static StaticUserLoginRelations()
		{
		}
	}
}
